<!doctype HTML>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<p>This tests for a bug when moving the caret forward/backward by a
line/paragraph.  The horizontal position of the caret would be lost when moving
the caret into an empty paragraph, when it should be preserved.  The caret
should be between the first and second 'x's in the third paragraph.</p>
<div id="sample" contenteditable>
xxx<br>
xxx<br>
<br>
xxx<br id="afterAnchor">
</div>
<div id="log"></div>
<script>
test(function() {
    var selection = window.getSelection();
    var sample = document.getElementById('sample');
    selection.collapse(sample, 0);
    selection.modify('move', 'forward', 'character');
    selection.modify('move', 'forward', 'line');
    selection.modify('move', 'forward', 'line');
    selection.modify('move', 'forward', 'line');

    var anchor = document.getElementById('afterAnchor').previousSibling;
    assert_equals(selection.anchorNode, anchor, 'anchorNode');
    assert_equals(selection.anchorOffset, 2, 'anchorOffset');
    assert_equals(selection.focusNode, anchor, 'focusNode');
    assert_equals(selection.focusOffset, 2, 'focusOffset');
});
</script>
